LINGUAGGI DI PROGRAMMAZIONE: IMPLEMENTAZIONE

Prof. Cettolo

Anno Accademico 2001/2002

 

L'obiettivo del corso e` di fornire i fondamenti implementativi dei linguaggi di programmazione, attraverso la descrizione del software e dell'hardware richiesti per l'esecuzione di programmi.

Dopo aver introdotto il corso, i temi principali trattati saranno:

- struttura dei calcolatori

- traduzione dei linguaggi (analisi del codice sorgente e sintesi del

codice oggetto)

- tipi di dati (elementari e strutturati)

- tipi di dati astratti

- controllo della compatibilita` tra tipi

- gestione della memoria

- controllo sequenza comandi

- controllo chiamate dei sottoprogrammi

- riferimenti locali e globali

- scoping statico e dinamico

- meccanismi di trasmissione dei parametri

Se ci sara` tempo, si descriveranno anche le implementazioni di concetti avanzati dei linguaggi orientati agli oggetti quali le classi e i metodi, l'ereditarieta` e il polimorfismo.

I linguaggi presi come riferimento saranno procedurali (C e Pascal), orientati agli oggetti (C++) e funzionali (ML).

Testo di riferimento:

T.W. Pratt, M.V Zelkowitz, Programming Languages: Design and Implementation

PRENTICE HALL, III o IV (2000) edizione